/**
 * 系统项目名称
 * com.kabao.oms.service
 * kbbmService.java
 * 
 * 2015年4月28日-上午10:38:06
 *  2015卡宝网络科技公司-版权所有
 *
 */
package com.kabao.oms.service;

import com.qianmi.open.api.ApiException;
import com.qianmi.open.api.DefaultOpenClient;
import com.qianmi.open.api.OpenClient;
import com.qianmi.open.api.request.RechargeMobileGetItemInfoRequest;
import com.qianmi.open.api.response.RechargeMobileGetItemInfoResponse;
import com.qianmi.open.api.response.TokenResponse;
import com.qianmi.open.api.tool.util.OAuthUtils;
import com.qianmi.open.api.tool.util.QianmiContext;





/**
 *
 * kbbmService
 * 
 * zhangyi
 * zhangyi
 * 2015年4月28日 上午10:38:06
 * 
 * @version 1.0.0
 *
 */
public class kbbmService {
	/**
	 * appKey 千米分配
	 * appSecre 千米分配
	 * qmUrl 千米api地址 根据手机号或固定电话号码查询号码详情，包括省市运营商及余额等，根据对接的查询模板，返回的详情可能存在差异，查询成功率也存在差异，建议选择对接成功率高的查询模板。
	 * 名称	类型	是否必须	描述
	method	String	必须	API接口名称
	access_token	String	可选	分配给用户的SessionKey，通过登陆授权获取。某个API是否需要传入session参数,需参考此API的API用户授权类型
	format	String	必须	指定响应格式,目前支持格式为json
	appKey	String	必须	分配给应用的AppKey
	v	String	必须	API协议版本，当前可选值:1.1
	sign	String	必须	API输入参数签名结果
	timestamp	Number	必须	请求时间戳,当前日期毫秒数，例如:1428488009985。
	 */
	/**
	 * 應用級輸入參數
	 * 名称	类型	是否必须	示例值	默认值	描述
phoneNo	String	必须	15888888888，025-88888888		固话或者手机号码
province	String	可选	江苏		所在省名称（固话查询时必需，后面不带'省'）
city	String	可选	南京		所在市名称（固话查询时必需,后面不带'市'）
operator	String	可选	移动		运营商名称（固话查询时必需）可选值：移动、联通、电信
	 */
	/**
	 * 返回結果
	 *  返回结果
名称	类型	是否必须	示例值	描述
phoneInfo	PhoneInfo	是		查询手机号或固话号详情信息返回
	 */
	private static final String AppKey = "10000258";
	private static final String AppSecre= "D8nICCCFTdn1i2wvJlMo6qajrQsA4gDo"; 
	private static final String QmUrl = "http://gw.api.qianmi.com/api";
private static final String access_token = "f1b0de414ebb4df2b9e6b66a1d3e7577";
	/**
	 * 
	 * HttpRequset(这里用一句话描述这个方法的作用)
	 * (这里描述这个方法适用条件 – 可选)
	 * @return
	 *Object
	 * @throws Exception 
	 * @exception
	 * @since  1.0.0
	 */
	public static  RechargeMobileGetItemInfoResponse HttpRequset() throws Exception{
		OpenClient client = new DefaultOpenClient(QmUrl, AppKey, AppSecre);
		RechargeMobileGetItemInfoRequest req = new RechargeMobileGetItemInfoRequest();
		req.setMobileNo("15225582227");
		req.setRechargeAmount("10");
		RechargeMobileGetItemInfoResponse response = client.execute(req, access_token);
		return response;
		
		
	}
	public static void main(String[] args) throws Exception {
		RechargeMobileGetItemInfoResponse req=	HttpRequset();
	System.out.println(req.getMobileItemInfo().getNumberChoice());
	}
	
	public static String getToken(String appKey, String appSecret, String code) throws ApiException{
		QianmiContext context = OAuthUtils.getToken(appKey, appSecret, "ca876d7d8f1ef195a5fc24719a306e1d");
		TokenResponse response = context.getTokenResponse();
        String accessToken = response.getAccessToken();

		return accessToken;
	}
}
